package io.datajek.spring.basics.movierecommendersystem.lesson5;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

/**
 * Created with IntelliJ IDEA.
 *
 * @author : 浩东
 * @version : 1.4
 * @Project : movie-recommender-system
 * @Package : io.datajek.spring.basics.movierecommendersystem.lesson1
 * @ClassName : .java
 * @createTime : 2021/9/17 16:36
 * @Description :
 *        RecommenderImplementation类将有一个名为推荐电影的方法，
 *        它将使用基于内容的过滤器找到类似的电影，然后返回结果
 */

@Component
public class RecommenderImplementation {

    //使用过滤器接口选择过滤器
    @Autowired
    private Filter contentBasedFilter;

    public RecommenderImplementation(Filter contentBasedFilter) {
        super();
        this.contentBasedFilter = contentBasedFilter;
    }

    //使用过滤器来获得推荐
    public String[] recommendMovies(String movie){

        //打印正在使用的接口实现的名称
        System.out.println("正在使用的过滤器名称：" + contentBasedFilter + "\n");

//        //使用基于内容的过滤器来寻找类似的电影
//        ContentBasedFilter filter = new ContentBasedFilter();
        //返回结果
            //return new String[] {"M1", "M2", "M3"};
        return contentBasedFilter.getRecommendations("Finding Dory");
    }
}
